if not fetched:
res[line.id] = 'canceled'
continue
- self.write(cr, uid, line.id, {'partner': fetched[2]})
- # NOTE: force un mise à jour du partner,
+ partner_id = fetched[2]
+ self.write(cr, uid, line.id, {'partner': partner_id})
+ # NOTE: force une mise à jour du partner,
# car il n'y en a pas lors de la création du pos.order
# dans le PoS (pour le moment)
ostate = fetched[0]
string = 'Current Membership Status', type = 'selection',
selection = STATE,
store = {
- 'account.invoice': (_get_invoice_partner, ['state'], 10),
- 'pos.order': (_get_order_partner, ['state', 'partner_id'], 10),
- 'membership.membership_line': (_get_partner_id, ['state'], 10),
- 'res.partner': (_get_partners, ['free_member', 'membership_state', 'associate_member'], 10)
+ # NOTE: il est important que la priorité soit plus grande
+ # que les membership_{start,stop,cancel}
+ # car _membership_state s'en sert et doit donc les trouver à jour.
+ 'account.invoice': (_get_invoice_partner, ['state'], 20),
+ 'pos.order': (_get_order_partner, ['state', 'partner_id'], 20),
+ 'membership.membership_line': (_get_partner_id, ['state'], 20),
+ 'res.partner': (_get_partners, ['free_member', 'membership_state', 'associate_member'], 20)
}, help="""It indicates the membership state.
-Non Member: A partner who has not applied for any membership.
-Cancelled Member: A member who has cancelled his membership.
string = 'Membership Start Date', type = 'date',
store = {
'account.invoice': (_get_invoice_partner, ['state'], 10),
- 'pos.order': (_get_order_partner, ['state'], 10),
- 'membership.membership_line': (_get_partner_id, ['state'], 10, ),
+ 'pos.order': (_get_order_partner, ['state', 'partner_id'], 10),
+ 'membership.membership_line': (_get_partner_id, ['state'], 10),
'res.partner': (lambda self, cr, uid, ids, c={}: ids, ['free_member'], 10)
}, help="Date from which membership becomes active."),
'membership_stop': fields.function(
string = 'Membership End Date', type='date', multi='membership_stop',
store = {
'account.invoice': (_get_invoice_partner, ['state'], 10),
- 'pos.order': (_get_order_partner, ['state'], 10),
+ 'pos.order': (_get_order_partner, ['state', 'partner_id'], 10),
'membership.membership_line': (_get_partner_id, ['state'], 10),
'res.partner': (lambda self, cr, uid, ids, c={}: ids, ['free_member'], 10)
}, help="Date until which membership remains active."),
string = 'Cancel Membership Date', type='date', multi='membership_cancel',
store = {
'account.invoice': (_get_invoice_partner, ['state'], 11),
- 'pos.order': (_get_order_partner, ['state'], 11),
+ 'pos.order': (_get_order_partner, ['state', 'partner_id'], 11),
'membership.membership_line': (_get_partner_id, ['state'], 10),
'res.partner': (lambda self, cr, uid, ids, c={}: ids, ['free_member'], 10)
}, help="Date on which membership has been cancelled"),